If X>0 and X<127 : SCM=0 : Gosub PROMENU_A : End If
If X>127 and X<255 : SCM=$8000 : Gosub PROMENU_A : End If
If X>255 and X<383
If SCL=Laced : SCL=0 Else SCL=Laced : End If
Gosub PROMENU_A
End If
End If
If Y>109 and Y<122
If X>0 and X<127 : N=83 : I=0 : N1=SCW : Gosub PROMENU_B : SCW=N1 : End If
If X>127 and X<255 : N=212 : I=1 : N1=SCH : Gosub PROMENU_B : SCH=N1 : End If
If X>255 and X<383 : N=340 : I=3 : N1=SCC : Gosub PROMENU_B : SCC=N1 : End If
End If
If Y>125 and Y<138
If X>0 and X<127 : G[0,126,126,137,1] : Screen To Front 0 : Screen 0 : Get Block 1,0,0,SCW2,SCH2 : Hrev Block 1 : Put Block 1,0,0 : Wait 50 : Screen To Back 0 : Screen 1 : G[0,126,126,137,0] : End If
If X>127 and X<255 : G[128,126,254,137,1] : Screen To Front 0 : Screen 0 : Get Block 1,0,0,SCW2,SCH2 : Vrev Block 1 : Put Block 1,0,0 : Wait 50 : Screen To Back 0 : Screen 1 : G[128,126,254,137,0] : End If
If X>255 and X<383 : G[256,126,382,137,1] : Screen To Front 0 : Screen 0 : Get Block 1,0,0,SCW2,SCH2 : Hrev Block 1 : Vrev Block 1 : Put Block 1,0,0 : Wait 50 : Screen To Back 0 : Screen 1 : G[256,126,382,137,0] : End If
End If
'
'* Use
'* ---
If Y>151 and Y<164
If X<127
G[1,152,126,163,1] : Wait 20
If SCW<>SCW2 or SCH<>SCH2 or SCC<>SCC2 or SCM<>SCM2 or SCL<>SCL2
If SCM>4 and SCC>15 : SCC=16 : End If
Screen Open 3,SCW2,SCH2,SCC2,SCM2
Flash Off
Get Palette 0
Screen 3
Cls 0
Screen Copy 0,0,0,SCW2,SCH2 To 3,0,0
If E=0
Screen Close 0
Screen Open 0,SCW,SCH,SCC,SCM+SCL
Flash Off
Get Palette 3
Cls 0
Screen Copy 3,0,0,SCW2,SCH2 To 0,0,0
Screen Close 3 : SC0X=0 : SC0Y=0 : SCC=Min(64,SCC)
If X>63 and X<321 and Y>51 and Y<164 Then SELECT[65]
Loop
'
LADEFARBEN_A:
G[384,61+I*16,577,72+I*16,I2]
Return
'
Data 435,"Load Palette",435,"Save Palette",428,"Delete Palette",423,"Get Bob Palette",419,"Get Icon Palette",440,"Use Palette"
End Proc
Procedure SELECT[N]
X=X Screen(X Mouse)-N : Y=Y Screen(Y Mouse)
If X>206 and X<255 and Y>51 and Y<64
G[207+N,52,254+N,63,1]
Ink 0 : Bar 23+N,66 To 252+N,148
For I=0 To 150 : LSFILE$(I)=Chr$(255) : Next : I=0
N$=Dev First$("")
While N$<>""
If N$<>""
X=Instr(N$,":")
LSFILE$(I)=Right$(Left$(N$,X),X-1)
Inc I
End If
N$=Dev Next$
Wend
'
FILEANZ#=I-1
Ink 2
For I=0 To Min(9,FILEANZ#)
Text 23+N,I*8+74,LSFILE$(I)
Next I
'
Y#=Max(1,FILEANZ#/10)
FY#=81/Max(1,Y#)
FYX#=FY#
FX#=0
FPOS=0
'
Ink 0 : Bar 2+N,67 To 11+N,148
Ink 2 : Bar 2+N,67 To 11+N,Min(148,68+FY#)
Wait 10
G[207+N,52,254+N,63,0]
End If
'
If X>17 and X<255 and Y>65 and Y<146
Add Y,-66 : Y=Y/8*8/8
Ink 1,2
If LSFILE$(Y)<>Chr$(255)
Text 23+N,Y*8+74,LSFILE$(FPOS+Y)+Space$(28-Len(LSFILE$(FPOS+Y)))
Wait 10
End If
'
If Instr(LSFILE$(FPOS+Y),Chr$(255))=0
If Instr(LSFILE$(FPOS+Y),":")=0 and Instr(LSFILE$(FPOS+Y),"*")=0
Ink 2,0
For I=0 To Min(9,FILEANZ#)
Text 23+N,I*8+74,LSFILE$(FPOS+I)+Space$(28-Len(LSFILE$(FPOS+I)))
Next
FILE$=LSFILE$(FPOS+Y)
Else
Ink 0 : Bar 23+N,66 To 252+N,148
Dir$=LSFILE$(FPOS+Y)-"*"
DEV$=Dir$
For I=0 To 150
LSFILE$(I)=Chr$(255)
Next
'
I=0
N$=Dir First$("")
While N$<>""
If N$<>""
N$=N$-Right$(N$,8) : N$=N$-" " : LSFILE$(I)=N$ : Inc I
End If
N$=Dir Next$
Wend
FILEANZ#=I-1
Ink 2,0
For I=0 To Min(9,FILEANZ#)
Text 23+N,I*8+74,LSFILE$(I)-Chr$(255)
Next
'
Y#=Max(1,FILEANZ#/10)
FY#=81/Max(1,Y#)
FYX#=FY#
FX#=0
FPOS=0
Ink 0 : Bar 2+N,67 To 11+N,148
Ink 2 : Bar 2+N,67 To 11+N,Min(148,68+FY#)
End If
Ink 0 : Bar 5+N,53 To 203+N,62 : Bar 5+N,153 To 253+N,162
Ink 2 : Text 5+N,60,Left$(DEV$,24) : Text 5+N,160,FILE$
End If
End If
'
If X>1 and X<12 and Y>66 and Y<149 and FILEANZ#>10
Add Y,-67
If Y>FY#
FX#=FX#+FYX#
FY#=FY#+FYX#
FX#=Min(FY#-FYX#,FX#)
Add FPOS,10
End If
If Y<FX#
FY#=FY#-FYX#
FX#=FX#-FYX#
FX#=Max(0,FX#)
Add FPOS,-10
End If
FPOS=Min(FILEANZ#-9,FPOS)
FPOS=Max(0,FPOS)
Ink 0 : Bar 2+N,67 To 11+N,148
Ink 2 : Bar 2+N,Min(148-FYX#,FX#+67) To 11+N,Min(148,FY#+67)
Ink 0 : Bar 23+N,66 To 252+N,148
Ink 2
For I=0 To 9
Text 23+N,I*8+74,LSFILE$(FPOS+I)
Next I
End If
If X>1 and X<255 and Y>151 and Y<164
G[0+N,152,254+N,163,1]
N$=FILE$
Repeat
N1=0
Ink ,1 : Text 5+N+Len(N$)*8,160," "
Ink 2,0
While N1=0 : N1=Asc(Inkey$) : Wend
If N1<>44 and N1>31 and Len(N$)<29
N$=N$+Chr$(N1)
End If
If N1=8 and Len(N$)>0
N$=Left$(N$,Len(N$)-1)
End If
Ink 0 : Bar 1+N,153 To 253+N,162
Ink 2 : Text 5+N,160,N$
Until N1=13
If Len(N$)>0 : FILE$=N$ : End If
Text 5+N,160,FILE$
G[0+N,152,254+N,163,0]
End If
Repeat : Until Mouse Key=0
End Proc
Procedure LD_SV[N]
Ink 0 : Bar N,52 To 254+N,163
G[0+N,52,204+N,63,0] : G[207+N,52,254+N,63,0]
G[0+N,65,15+N,150,0] : G[17+N,65,254+N,150,0]
G[0+N,152,254+N,163,0]
Ink 2 : Text 5+N,60,Left$(DEV$,24)
Text 212+N,60,"Devs:"
Text 5+N,160,FILE$
For I=0 To 9
Text 23+N,I*8+74,LSFILE$(I)-Chr$(255)
Next I
Y#=Max(1,FILEANZ#/10)
FY#=81/Max(1,Y#)
Ink 0 : Bar 2+N,67 To 11+N,148
Ink 2 : Bar 2+N,67 To 11+N,Min(148,68+FY#)
Screen Display 1,128,64,,166
Screen Display 2,128,50,,
End Proc
Procedure G[X,Y,X2,Y2,N]
If N=0 Then I=1 : I2=2 Else I=2 : I2=1
Ink I : Draw X,Y To X2-1,Y : Draw X,Y To X,Y2
Ink I2 : Draw X+1,Y2 To X2,Y2 : Draw X2,Y To X2,Y2
Ink 1,0
End Proc
Procedure SETCOMMENT[N$]
If E<>0 Then Pop Proc
'
N$=Chr$($9B)+"3;33m"+N$+" created with AIFFpaint by Volker Stepprath of Testaware !"+Chr$($9B)+"0m"+Chr$(0)
F$=DEV$+FILE$+Chr$(0)
'
Dreg(1)=Varptr(F$)
Dreg(2)=Varptr(N$)
LVOSETCOMMENT=Doscall(-180)
End Proc
Procedure FEHLER
Screen Display 1,128,64,,180
Screen Display 2,128,50,,
Screen To Front 2
Screen To Front 1
Screen 1
Screen Show
Ink 0 : Bar 0,167 To 639,178
G[0,167,639,178,0]
E=Errn
If E=31 Then N$="IFF compression not recognised !"
If E=48 Then N$="Out of memory !" : SCW=320 : SCH=200 : SCC=32 : SCM=0 : Screen Open 0,SCW,SCH,SCC,SCM : Flash Off : Curs Off : Get Palette 2 : Cls 0 : Screen To Back 0
If E=66 Then N$="Sorry, I`m not perfect !" : Screen 0 : Get Block 2,0,0,10,10
If E=81 Then N$=FILE$+" not found !"
If E=84 Then N$="Disc is write protected !"
If E=88 Then N$="Disc is full !"
If E=89 Then N$=FILE$+" is protected against deletion !"
If E=90 Then N$=FILE$+" is protected against writing !"
If E=91 Then N$=FILE$+" is protected against reading !"
If E=94 Then N$="I/O Error !"
If E=95 Then N$=FILE$+" is not an IFF picture"
If N$="" Then N$="Error #"+Str$(E)-" "+"! ... ( don`t use it like you do it ! )"